package com.learn.actionplatfo.Mapper;

import org.springframework.stereotype.Repository;
import com.learn.actionplatfo.bean.Good;

import java.util.List;

@Repository
public interface GoodMapper {

    /**
     * 查找所有商品
     * @return
     */
    List<Good> getAllGood();

    /**
     * 通过商品名字查找商品
     * @param goodName
     * @return
     */
    Good getGoodByName(String goodName);

    /**
     * 通过商品名称的模糊查询
     * @return
     * @param goodVagueName
     */
    List<Good> getGoodByVagueName(String goodVagueName);

    /**
     * 根据商品属性查询商品
     * @param goodAttribute
     * @return
     */
    List<Good> getGoodByAttribute(String goodAttribute);

    /**
     * 根据第第一分类和第二分类查询商品
     * @param fristClass
     * @param secondClass
     * @return
     */
    List<Good> getGoodBy1stand2ndClassification(String fristClass,String secondClass);

    /**
     * 通过第一分类来查询商品
     * @param fristClassification
     * @return
     */
    List<Good> getGoodBy1stClassification(String fristClassification);

    /**
     * 通过第二分类来查询商品
     * @param secondClassification
     * @return
     */
    List<Good> getGoodBy2ndClassification(String secondClassification);

    /**
     * 通过商品状态查询商品
     * @param goodState
     * @return
     */
    List<Good> getGoodByState(int goodState);

    /**
     * 增加商品
     * @param good
     * @return
     */
    int addGood(Good good);

    /**
     * 获取所有商品id中最大的值
     * @return
     */
    int getAllGoodMaxId();

    /**
     * 更新商品信息
     * @return
     */
    int updateGood(Good good);

    /**
     * 通过商品id查找商品
     * @param id
     * @return
     */
    Good getGoodById(int id);
}
